//#include "mainwindow.h"

//#include <QApplication>

//int main(int argc, char *argv[])
//{
//    QApplication a(argc, argv);
//    MainWindow w;
//    w.show();
//    return a.exec();
//}


// -------------------------------------------------------------------------------------------------
//#include <QApplication>
//#include <QMainWindow>
//#include <QWebEngineView>
//#include <QWebEnginePage>
//#include <QVBoxLayout>
//#include <QCommandLineParser>
//#include <QWebEngineSettings>

//// 自定义 WebEngineView 类
//class CustomWebEngineView : public QWebEngineView {
//    Q_OBJECT
//public:
//    explicit CustomWebEngineView(QWidget *parent = nullptr) : QWebEngineView(parent) {}

//protected:
//    QWebEngineView* createWindow(QWebEnginePage::WebWindowType type) override {
//        Q_UNUSED(type);

//        auto *newWebView = new CustomWebEngineView();
//        auto *newWindow = new QMainWindow();
//        newWindow->setCentralWidget(newWebView);
//        newWindow->setWindowState(Qt::WindowFullScreen);
//        newWindow->show();

//        return newWebView;
//    }
//};

//int main(int argc, char *argv[]) {
//    QApplication app(argc, argv);

//    // 设置命令行解析器
//    QCommandLineParser parser;
//    parser.addHelpOption();
//    parser.addPositionalArgument("url", "The URL to open.");
//    parser.process(app);

//    QString url = "https://163.com"; // 默认 URL
//    if (!parser.positionalArguments().isEmpty()) {
//        url = parser.positionalArguments().first();
//    }

//    // 创建主窗口
//    QMainWindow mainWindow;
//    mainWindow.setWindowState(Qt::WindowFullScreen); // 设置全屏

//    // 创建自定义 WebEngineView
//    CustomWebEngineView *webView = new CustomWebEngineView(&mainWindow);
//    webView->load(QUrl(url)); // 加载 URL

//    // 启用 JavaScript 和链接跳转支持
//    webView->settings()->setAttribute(QWebEngineSettings::JavascriptEnabled, true);
//    webView->settings()->setAttribute(QWebEngineSettings::JavascriptCanOpenWindows, true);
//    webView->settings()->setAttribute(QWebEngineSettings::LinksIncludedInFocusChain, true);

//    // 设置布局
//    QVBoxLayout *layout = new QVBoxLayout();
//    layout->addWidget(webView);

//    QWidget *centralWidget = new QWidget(&mainWindow);
//    centralWidget->setLayout(layout);
//    mainWindow.setCentralWidget(centralWidget);

//    // 显示主窗口
//    mainWindow.show();

//    return app.exec();
//}

// -----------------------
//#include <QApplication>
//#include <QMainWindow>
//#include <QVBoxLayout>
//#include <QCommandLineParser>
//#include "customwebengineview.h"
//#include <QWebEngineSettings> // 添加此行

//int main(int argc, char *argv[]) {
//    QApplication app(argc, argv);

//    // 设置命令行解析器
//    QCommandLineParser parser;
//    parser.addHelpOption();
//    parser.addPositionalArgument("url", "The URL to open.");
//    parser.process(app);

//    QString url = "https://163.com"; // 默认 URL
//    if (!parser.positionalArguments().isEmpty()) {
//        url = parser.positionalArguments().first();
//    }

//    // 创建主窗口
//    QMainWindow mainWindow;
//    mainWindow.setWindowState(Qt::WindowFullScreen); // 设置全屏

//    // 创建自定义 WebEngineView
//    CustomWebEngineView *webView = new CustomWebEngineView(&mainWindow);
//    webView->load(QUrl(url)); // 加载 URL

//    // 启用 JavaScript 和链接跳转支持
//    QWebEngineSettings *settings = webView->settings(); // 获取 WebEngineSettings
//    settings->setAttribute(QWebEngineSettings::JavascriptEnabled, true);
//    settings->setAttribute(QWebEngineSettings::JavascriptCanOpenWindows, true);
//    settings->setAttribute(QWebEngineSettings::LinksIncludedInFocusChain, true);

//    // 设置布局
//    QVBoxLayout *layout = new QVBoxLayout();
//    layout->addWidget(webView);

//    QWidget *centralWidget = new QWidget(&mainWindow);
//    centralWidget->setLayout(layout);
//    mainWindow.setCentralWidget(centralWidget);

//    // 显示主窗口
//    mainWindow.show();

//    return app.exec();
//}


// -----------------------------

#include <QApplication>
#include <QMainWindow>
#include <QVBoxLayout>
#include <QCommandLineParser>
#include <QWebEngineSettings>
#include "customwebengineview.h"

int main(int argc, char *argv[]) {
    QApplication app(argc, argv);

    // 设置命令行解析器
    QCommandLineParser parser;
    parser.addHelpOption();
    parser.addPositionalArgument("url", "The URL to open.");
    parser.process(app);

    QString url = "https://163.com"; // 默认 URL
    if (!parser.positionalArguments().isEmpty()) {
        url = parser.positionalArguments().first();
    }

    // 创建主窗口
    QMainWindow mainWindow;
    mainWindow.setWindowState(Qt::WindowFullScreen); // 设置全屏

    // 创建自定义 WebEngineView
    CustomWebEngineView *webView = new CustomWebEngineView(&mainWindow);
    webView->load(QUrl(url)); // 加载 URL

    // 启用 JavaScript 和链接跳转支持
    QWebEngineSettings *settings = webView->settings();
    settings->setAttribute(QWebEngineSettings::JavascriptEnabled, true);
    settings->setAttribute(QWebEngineSettings::JavascriptCanOpenWindows, false); // 禁止新窗口
    settings->setAttribute(QWebEngineSettings::LinksIncludedInFocusChain, true);

    // 设置布局
    QVBoxLayout *layout = new QVBoxLayout();
    layout->addWidget(webView);

    QWidget *centralWidget = new QWidget(&mainWindow);
    centralWidget->setLayout(layout);
    mainWindow.setCentralWidget(centralWidget);

    // 显示主窗口
    mainWindow.show();

    return app.exec();
}
